package com.baoxin.consumer.client;

import com.baoxin.consumer.client.fallback.UserClientFallback;
import com.baoxin.consumer.config.FeignConfig;
import com.baoxin.consumer.pojo.User;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

/**
 *  Feign 主要作用:  自动根据参数拼接 http 请求地址。
 *
 *      Feign 负载均衡及熔断
 *          1. 负载均衡
 *          2. 服务熔断
 *          3. 祈求压缩
 *          4. 日志级别
 *
 *          都可以通过 配置项在Feign 中开启使用
 *
 *        Feign 支持对请求和响应进行GZIP 压缩， 以减少同行过程中的性能损耗。
 *
 *
 */
//  声明当前类是一个Feign 客户端， 指定服务名为 user-service
@FeignClient(value = "user-service", fallback = UserClientFallback.class,
configuration = FeignConfig.class)
public interface UserClient {


    @GetMapping("/user/{id}")
    public User queryById(@PathVariable("id") Long id ) ;








}
